﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Sinacor.Process.Bovespa.Financeiro.ProcessEntity
{
    public class Financeiro
    {
        #region Atributos

        private DateTime _dataMovimento;
        private DateTime _dataNegocio;
        private Enum.TipoBolsa _bolsaFaturamento;
        private int _codigoCliente;
        private int _digitoCliente;
        private string _nomeCliente;
        private int _codigoClienteBroker;
        private int _codigoClienteLiquidante;
        private string _nomeClienteLiquidante;
        private int _codigoAssessor;
        private string _nomeAssessor;
        private decimal _percentualComissaoAssessor;
        private int? _codigoAgente;
        private string _nomeAgente;
        private decimal _percentualComissaoAgente;
        private int _codigoCorrespondente;
        private string _codigoAtivo;
        private int _numeroNegocio;
        private Enum.TipoNaturezaOperacao _naturezaOperacao;
        private int _carteira;
        private decimal? _quantidade;
        private decimal? _precoNegocio;
        private decimal? _volumeNegocio;
        private decimal? _valorTaxaAna;
        private decimal? _valorDespesa;
        private decimal? _valorIRRFCorretagem;
        private decimal? _valorComissaoAssessor;
        private decimal? _valorComissaoAgente;
        private decimal? _valorCorrespondente;
        private decimal? _valorDescontoCliente;
        private decimal? _valorCorretagem;
        private decimal? _valorTaxaRegistro;
        private decimal? _valorTaxaRegistroBovespa;
        private decimal? _valorTaxaRegistroCBLC;
        private decimal? _valorEmolumento;
        private decimal? _valorEmolumentoBovespa;
        private decimal? _valorEmolumentoCBLC;
        private string _indicadorNegocio;
        private string _indicadorClienteQualificado;
        private string _indicadorTipoLiquidacao;
        private DateTime _dataLiquidacao;
        private decimal? _valorBaseIRRF;
        private decimal? _valorIRRF;
        private decimal? _fatorValorizacao;
        private decimal? _valorISS;
        private decimal? _valorISSCorrespondente;
        private int? _municipio;
        private decimal? _corretagemOriginal;

        #endregion

        #region Construtor

        public Financeiro()
        {
        }

        #endregion

        #region Propriedades

        public DateTime DataMovimento
        {
            get { return _dataMovimento; }
            set { _dataMovimento = value; }
        }

        public DateTime DataNegocio
        {
            get { return _dataNegocio; }
            set { _dataNegocio = value; }
        }

        public Enum.TipoBolsa BolsaFaturamento
        {
            get { return _bolsaFaturamento; }
            set { _bolsaFaturamento = value; }
        }

        public int CodigoCliente
        {
            get { return _codigoCliente; }
            set { _codigoCliente = value; }
        }

        public int DigitoCliente
        {
            get { return _digitoCliente; }
            set { _digitoCliente = value; }
        }

        public string NomeCliente
        {
            get { return _nomeCliente; }
            set { _nomeCliente = value; }
        }

        public int CodigoClienteBroker
        {
            get { return _codigoClienteBroker; }
            set { _codigoClienteBroker = value; }
        }

        public int CodigoClienteLiquidante
        {
            get { return _codigoClienteLiquidante; }
            set { _codigoClienteLiquidante = value; }
        }

        public string NomeClienteLiquidante
        {
            get { return _nomeClienteLiquidante; }
            set { _nomeClienteLiquidante = value; }
        }

        public int CodigoAssessor
        {
            get { return _codigoAssessor; }
            set { _codigoAssessor = value; }
        }

        public string NomeAssessor
        {
            get { return _nomeAssessor; }
            set { _nomeAssessor = value; }
        }

        public decimal PercentualComissaoAssessor
        {
            get { return _percentualComissaoAssessor; }
            set{ _percentualComissaoAssessor = value;}
        }

        public int? CodigoAgente
        {
            get { return _codigoAgente; }
            set { _codigoAgente = value; }
        }

        public string NomeAgente
        {
            get { return _nomeAgente; }
            set { _nomeAgente = value; }
        }

        public decimal PercentualComissaoAgente
        {
            get { return _percentualComissaoAgente; }
            set { _percentualComissaoAgente = value; }
        }

        public int CodigoCorrespondente
        {
            get { return _codigoCorrespondente; }
            set { _codigoCorrespondente = value; }
        }

        public string CodigoAtivo
        {
            get { return _codigoAtivo; }
            set { _codigoAtivo = value; }
        }

        public int NumeroNegocio
        {
            get { return _numeroNegocio; }
            set { _numeroNegocio = value; }
        }

        public Enum.TipoNaturezaOperacao NaturezaOperacao
        {
            get { return _naturezaOperacao; }
            set { _naturezaOperacao = value; }
        }

        public int Carteira
        {
            get { return _carteira; }
            set { _carteira = value; }
        }

        public decimal? Quantidade
        {
            get { return _quantidade; }
            set { _quantidade = value; }
        }

        public decimal? PrecoNegocio
        {
            get { return _precoNegocio; }
            set { _precoNegocio = value; }
        }

        public decimal? VolumeNegocio
        {
            get { return _volumeNegocio; }
            set { _volumeNegocio = value; }
        }

        public decimal? ValorTaxaAna
        {
            get { return _valorTaxaAna; }
            set { _valorTaxaAna = value; }
        }

        public decimal? ValorDespesa 
        {
            get { return _valorDespesa; }
            set { _valorDespesa = value; }
        }

        public decimal? ValorIRRFCorretagem
        {
            get { return _valorIRRFCorretagem; }
            set { _valorIRRFCorretagem = value; }
        }

        public decimal? ValorComissaoAssessor
        {
            get { return _valorComissaoAssessor; }
            set { _valorComissaoAssessor = value; }
        }

        public decimal? ValorComissaoAgente
        {
            get { return _valorComissaoAgente; }
            set { _valorComissaoAgente = value; }
        }

        public decimal? ValorCorrespondente
        {
            get { return _valorCorrespondente; }
            set { _valorCorrespondente = value; }
        }

        public decimal? ValorDescontoCliente
        {
            get { return _valorDescontoCliente; }
            set { _valorDescontoCliente = value; }
        }

        public decimal? ValorCorretagem 
        {
            get { return _valorCorretagem; }
            set { _valorCorretagem = value; }
        }

        public decimal? ValorTaxaRegistro
        {
            get { return _valorTaxaRegistro; }
            set { _valorTaxaRegistro = value; }
        }

        public decimal? ValorTaxaRegistroBovespa
        {
            get { return _valorTaxaRegistroBovespa; }
            set { _valorTaxaRegistroBovespa = value; }
        }

        public decimal? ValorTaxaRegistroCBLC
        {
            get { return _valorTaxaRegistroCBLC; }
            set { _valorTaxaRegistroCBLC = value; }
        }

        public decimal? ValorEmolumento 
        {
            get { return _valorEmolumento; }
            set { _valorEmolumento = value; }
        }

        public decimal? ValorEmolumentoBovespa 
        {
            get { return _valorEmolumentoBovespa; }
            set { _valorEmolumentoBovespa = value; }
        }

        public decimal? ValorEmolumentoCBLC
        {
            get { return _valorEmolumentoCBLC; }
            set { _valorEmolumentoCBLC = value; }
        }

        public string IndicadorNegocio 
        {
            get { return _indicadorNegocio; }
            set { _indicadorNegocio = value; }
        }

        public string IndicadorClienteQualificado 
        {
            get { return _indicadorClienteQualificado; }
            set { _indicadorClienteQualificado = value; }
        }

        public string IndicadorTipoLiquidacao 
        {
            get { return _indicadorTipoLiquidacao; }
            set { _indicadorTipoLiquidacao = value; }
        }

        public DateTime DataLiquidacao
        {
            get { return _dataLiquidacao; }
            set { _dataLiquidacao = value; }
        }

        public decimal? ValorBaseIRRF
        {
            get { return _valorBaseIRRF; }
            set { _valorBaseIRRF = value; }
        }

        public decimal? ValorIRRF
        {
            get { return _valorIRRF; }
            set { _valorIRRF = value; }
        }

        public decimal? FatorValorizacao
        {
            get { return _fatorValorizacao; }
            set { _fatorValorizacao = value; }
        }

        public decimal? ValorISS
        {
            get { return _valorISS; }
            set { _valorISS = value; }
        }

        public decimal? ValorISSCorrespondente
        {
            get { return _valorISSCorrespondente; }
            set { _valorISSCorrespondente = value; }
        }

        public int? Municipio
        {
            get { return _municipio; }
            set { _municipio = value; }
        }

        public decimal? CorretagemOriginal
        {
            get { return _corretagemOriginal; }
            set { _corretagemOriginal = value; }
        }

        #endregion
    }
}
